Device functionality management provides options for controlling the behavior of devices through provision of a software development kit (SDK), application wrapping, and compliance rules. In some situations, applications executing on mobile devices may consume large amounts of data. Since many telecommunications providers allot only a certain amount of data per billing cycle, it is easy for such applications to exceed the allotment and incur additional charges. Similarly, pre-paid plans offer a limited amount of data before additional payments are required. Furthermore, mobile devices operating outside of their home area (e.g., roaming internationally) may also incur significant charges. Additionally, mobile devices are typically battery powered, and network operations, such as receiving and transmitting data, often comprise battery-intensive operations. Conventional approaches simply continue to transmit data and incur additional charges, and allow the device to rapidly deplete its battery power.